1. Field of the Invention
This invention relates in general to a computer implemented database system, and more particularly, to a modification system for supporting localized data changes in a mobile device.
2. Description of Related Art
Databases are computerized information storage and retrieval systems. A Relational Database Management System (RDBMS) is a database management system (DBMS) which uses relational techniques for storing and retrieving data. Relational databases are organized into tables which consist of rows and columns of data. The rows are formally called tuples. A database will typically have many tables and each table will typically have multiple tuples and multiple columns. The tables are typically stored on random access storage devices (RASD) such as magnetic or optical disk drives for semi-permanent storage.
RDBMS software using a Structured Query Language (SQL) interface is well known in the art. The SQL interface has evolved into a standard language for RDBMS software and has been adopted as such by both the American National Standards Institute (ANSI) and the International Standards Organization (ISO). The SQL interface allows users to formulate relational operations on the tables either interactively, in batch files, or embedded in host languages, such as C and COBOL. SQL allows the user to manipulate the data. A variety of mobile devices such as Palm, Windows CE devices, various embedded systems, and smart card based systems, may utilize a local database management system for storing and retrieving data. Sometimes, relational database management systems are utilized. These types of mobile devices have become very popular and are increasingly being used by a wide spectrum of people. Unfortunately, these small devices have limited memory, a small display, and operate at slow speeds. Also, these small devices occasionally need to connect to a main database, via a slow and expensive network data link, to download and upload information.
Most of the time, a user utilizes a mobile device in stand-alone mode (i.e. when its not connected to the main database). For example, a salesperson may download information from the main database in the morning about prospective buyers, such as their business addresses, use the mobile device during the day in stand-alone mode, and the next morning download information about another set of prospective buyers. When the mobile device connects to the main database, the data in the RDBMS of the mobile device is synchronized with the data in the RDBMS of the main database. During synchronization, changes in the databases of either the mobile device or the main database, are reconciled with one another, such that they are synchronized (i.e. contain the same data).
Due to the small display and limited memory of mobile devices, a user may want to delete some of the data on the mobile device. Further, a user may want to make some changes to the data on the mobile device, such as to delete unnecessary information about a potential buyer or to make specialized notes about a potential buyer, that do not need to be reflected at the main database. Unfortunately, any data changes (deletions/changes/insertions) made with the mobile device will be detected when it is connected with the main database during the synchronization process. This unnecessarily increases the amount of data transmitted back and forth during the synchronization process resulting in a slow, inefficient, and expensive synchronization process. Thus, there is a need in the art for an improved method of making changes to data in a mobile device.